package com.young.web;

import com.young.exception.MyException;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

//注意，在用thymeleaf模板时，不要使用RestController
@Controller
public class HelloController {
    //访问不存在的url或者/hello，都将触发错误页面
    @RequestMapping("/hello")
    public String hello() throws Exception {
        //可以将异常塞进由@ControllerAdvice修饰的全局异常处理类中统一处理,
        //具体Ctrontller中只需要抛出异常即可，不再需要关心用error page页面展示逻辑
        //抛出不同类型的Exception需要在全局异常处理类中定义不同的handler
        throw new Exception("触发了一个页面错误");
    }

    @RequestMapping("/json")
    public String json() throws MyException {
        throw new MyException("触发抛出自定义异常");
    }

}